package org.chaos.sekiro.workorder.webapi.dto

import org.chaos.sekiro.workorder.common.enumeration.ComponentAbilityCode
import org.chaos.sekiro.workorder.common.enumeration.ComponentAttributeCode
import org.chaos.sekiro.workorder.common.enumeration.ComponentType

data class ComponentWebDto(
    val id: Long,
    val formId: Long,
    val parentId: Long,
    var name: String,
    val type: ComponentType,
    var deleted: Boolean,
    var attributes: List<AttributeWebDto>,
    var abilities: List<AbilityWebDto>
)

data class AttributeWebDto(
    val code: ComponentAttributeCode,
    val customCode: String,
    val name: String,
    val value: String
)

data class AbilityWebDto(
    val code: ComponentAbilityCode,
    val customCode: String,
    val name: String,
    val value: String,
    val enabled: Boolean
)